package com.weiyuwqj.server.service.sys.impl;

import com.alibaba.dubbo.container.page.PageHandler;
import com.github.pagehelper.PageHelper;
import com.weiyuwqj.api.common.PageList;
import com.weiyuwqj.api.common.Paginator;
import com.weiyuwqj.api.constant.Message;
import com.weiyuwqj.api.model.SysConfigParameter;
import com.weiyuwqj.api.service.SysConfigParameterService;
import com.weiyuwqj.server.mapper.SysConfigParameterMapper;
import com.weiyuwqj.server.service.base.BaseServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;

/**
 * Created by huzj on 2017/3/22.
 */
@Service("configParameterService")
public class SysConfigParamterServiceImpl extends BaseServiceImpl<SysConfigParameter> implements SysConfigParameterService {

    @Autowired
    SysConfigParameterMapper configParameterMapper;

    /**
     * 查询系统设置列表
     * @return
     */
    public PageList getList(Paginator p) {
        PageHelper.startPage(p.getPageNum(),p.getPageSize());
        List<SysConfigParameter> list = configParameterMapper.getList();
        return new PageList(list);
    }

    /**
     * 查询系统设置列表(未分页)
     * @return
     */
    @Override
    public List<SysConfigParameter> getList() {
        return configParameterMapper.getList();
    }

    /**
     * 根据key查询单条记录
     * @param key
     * @return
     */
    @Override
    public SysConfigParameter getParamterByKey(String key) {
//        //不允许查询系统参数
//        if(!key.contains("lock_day")){
//            return "-1";
//        }
        return configParameterMapper.getParamterByKey(key);
    }

    /**
     * 根据key修改value
     * @param key
     * @param value
     * @return
     */
    @Override
    public Map updateValueByKey(String key,String value) {
//        //不允许更新系统参数
//        if(!key.contains("lock_day")){
//            return Message.FAIL;
//        }
         configParameterMapper.updateValueByKey(key,value);
        return Message.OK;
    }
}
